<!--
  ~ ***********************************************************************
  ~
  ~  Copyright (C) 2010 - 2015
  ~
  ~  [Component.java]
  ~  JACPFX Project (https://github.com/JacpFX/JacpFX/)
  ~  All rights reserved.
  ~
  ~  Licensed under the Apache License, Version 2.0 (the "License");
  ~  you may not use this file except in compliance with the License.
  ~  You may obtain a copy of the License at
  ~
  ~      http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~  Unless required by applicable law or agreed to in writing,
  ~  software distributed under the License is distributed on an "AS IS"
  ~  BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  ~  express or implied. See the License for the specific language
  ~  governing permissions and limitations under the License.
  ~
  ~
  ~ ***********************************************************************/
  -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0-ea) on Wed Jan 15 11:02:14 CET 2014 -->
<title>IStatelessCallabackComponent</title>
<meta name="date" content="2014-01-15">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="IStatelessCallabackComponent";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IStatelessCallabackComponent.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/jacpfx/api/component/IRootComponent.html" title="interface in org.quickstart.api.component"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/jacpfx/api/component/ISubComponent.html" title="interface in org.quickstart.api.component"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/jacpfx/api/component/IStatelessCallabackComponent.html" target="_top">Frames</a></li>
<li><a href="IStatelessCallabackComponent.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.quickstart.api.component</div>
<h2 title="Interface IStatelessCallabackComponent" class="title">Interface IStatelessCallabackComponent&lt;L,A,M&gt;</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>L</code> - defines the message listener type</dd>
<dd><code>A</code> - defines the basic event type</dd>
<dd><code>M</code> - defines the basic message type</dd>
</dl>
<dl>
<dt>All Superinterfaces:</dt>
<dd>java.lang.Comparable&lt;<a href="../../../../org/jacpfx/api/component/IComponent.html" title="interface in org.quickstart.api.component">IComponent</a>&lt;L,M&gt;&gt;, <a href="../../../../org/jacpfx/api/component/IComponent.html" title="interface in org.quickstart.api.component">IComponent</a>&lt;L,M&gt;, <a href="../../../../org/jacpfx/api/component/ISubComponent.html" title="interface in org.quickstart.api.component">ISubComponent</a>&lt;L,A,M&gt;</dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">IStatelessCallabackComponent&lt;L,A,M&gt;</span>
extends <a href="../../../../org/jacpfx/api/component/ISubComponent.html" title="interface in org.quickstart.api.component">ISubComponent</a>&lt;L,A,M&gt;</pre>
<div class="block">Represents a state less background/callback component. This component has a
 typical handle method, the return value is typically a non UI value (but it
 can be). Every message to this component should be handled in a separate
 thread and component instance, managed by an executor (to avoid garbage). Do
 not use private members as it is not guaranteed that that you contact the
 same instance twice. This component type is good for scaling tasks like
 performing operations on many folders or tables in database. The return value
 will be send to message caller or to specified handleTargetId.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Andy Moncsek</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>java.util.concurrent.ExecutorService</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html#getExecutorService--">getExecutorService</a></span>()</code>
<div class="block">returns associated executor service</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../../org/jacpfx/api/component/ISubComponent.html" title="interface in org.quickstart.api.component">ISubComponent</a>&lt;<a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html" title="type parameter in IStatelessCallabackComponent">L</a>,<a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html" title="type parameter in IStatelessCallabackComponent">A</a>,<a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html" title="type parameter in IStatelessCallabackComponent">M</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html#getInstances--">getInstances</a></span>()</code>
<div class="block">return instances of current state less component</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.util.concurrent.atomic.AtomicInteger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html#getThreadCounter--">getThreadCounter</a></span>()</code>
<div class="block">returns thread counter to coordinate amount of existing instances of
 sateless callback component</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.jacpfx.api.component.ISubComponent">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.jacpfx.api.component.<a href="../../../../org/jacpfx/api/component/ISubComponent.html" title="interface in org.quickstart.api.component">ISubComponent</a></h3>
<code><a href="../../../../org/jacpfx/api/component/ISubComponent.html#getComponent--">getComponent</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#getNextIncomingMessage--">getNextIncomingMessage</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#getParentId--">getParentId</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#hasIncomingMessage--">hasIncomingMessage</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#initEnv-java.lang.String-java.util.concurrent.BlockingQueue-">initEnv</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#isBlocked--">isBlocked</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#lock--">lock</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#putIncomingMessage-org.jacpfx.api.message.Message-">putIncomingMessage</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#release--">release</a>, <a href="../../../../org/jacpfx/api/component/ISubComponent.html#setComponent-X-">setComponent</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.jacpfx.api.component.IComponent">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.jacpfx.api.component.<a href="../../../../org/jacpfx/api/component/IComponent.html" title="interface in org.quickstart.api.component">IComponent</a></h3>
<code><a href="../../../../org/jacpfx/api/component/IComponent.html#getContext--">getContext</a>, <a href="../../../../org/jacpfx/api/component/IComponent.html#getLocaleID--">getLocaleID</a>, <a href="../../../../org/jacpfx/api/component/IComponent.html#getResourceBundleLocation--">getResourceBundleLocation</a>, <a href="../../../../org/jacpfx/api/component/IComponent.html#isStarted--">isStarted</a>, <a href="../../../../org/jacpfx/api/component/IComponent.html#setLocaleID-java.lang.String-">setLocaleID</a>, <a href="../../../../org/jacpfx/api/component/IComponent.html#setResourceBundleLocation-java.lang.String-">setResourceBundleLocation</a>, <a href="../../../../org/jacpfx/api/component/IComponent.html#setStarted-boolean-">setStarted</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Comparable">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.Comparable</h3>
<code>compareTo</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getInstances--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInstances</h4>
<pre>java.util.List&lt;<a href="../../../../org/jacpfx/api/component/ISubComponent.html" title="interface in org.quickstart.api.component">ISubComponent</a>&lt;<a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html" title="type parameter in IStatelessCallabackComponent">L</a>,<a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html" title="type parameter in IStatelessCallabackComponent">A</a>,<a href="../../../../org/jacpfx/api/component/IStatelessCallabackComponent.html" title="type parameter in IStatelessCallabackComponent">M</a>&gt;&gt;&nbsp;getInstances()</pre>
<div class="block">return instances of current state less component</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an new callback instance</dd>
</dl>
</li>
</ul>
<a name="getThreadCounter--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThreadCounter</h4>
<pre>java.util.concurrent.atomic.AtomicInteger&nbsp;getThreadCounter()</pre>
<div class="block">returns thread counter to coordinate amount of existing instances of
 sateless callback component</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the counter</dd>
</dl>
</li>
</ul>
<a name="getExecutorService--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getExecutorService</h4>
<pre>java.util.concurrent.ExecutorService&nbsp;getExecutorService()</pre>
<div class="block">returns associated executor service</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the execution service</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IStatelessCallabackComponent.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/jacpfx/api/component/IRootComponent.html" title="interface in org.quickstart.api.component"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/jacpfx/api/component/ISubComponent.html" title="interface in org.quickstart.api.component"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/jacpfx/api/component/IStatelessCallabackComponent.html" target="_top">Frames</a></li>
<li><a href="IStatelessCallabackComponent.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
